package com.whminwei.edu.api.dc.dto.fspn.school;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 获取教学楼信息响应
 * 包括教学楼、宿舍楼
 *
 * @author zhangjq
 * @since 2024-05-10
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
public class DcBuildingFspn {

    /**
     * 建筑列表
     */
    private List<DcBuilding> buildingList;
    /**
     * 房间列表
     */
    private List<DcRoom> roomList;


    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    @JsonInclude(JsonInclude.Include.NON_NULL)

    public static class DcRoom {
        private String roomId;
        /**
         * 楼号
         */
        private String buildingId;

        /**
         * 层号
         */
        private int floorNo;

        /**
         * 房间号
         */
        private int roomNo;
        /**
         * 房间名称
         */
        private String name;
        /**
         * 房间类型
         *房间类型;空房间、教室、办公室、会议室、宿舍、功能房
         */
        private String type;


        /**
         * 可容纳人数
         */
        private int capacity;

        /**
         * 房间属性
         * 属性;教室：多媒体；宿舍：男、女
         */
        private String attr;
    }

    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public static class DcBuilding {

        private String buildingId;
        /**
         * 建筑名称
         */
        private String buildingName;
        /**
         * 建筑类型
         */
        private String type;
        /**
         * 建筑简称
         */
        private String buildingAlias;
        /**
         * 建筑描述
         */
        private String buildingDesc;
        /**
         * 所属校区(编号)
         */
        private String campusId;

    }

}
